/* **************************************************************** *
 *                      Gradebook Grades styles                     *
 * **************************************************************** */
 
 /* Fonts */
 @font-face {
    font-family:"gradebook-icons";
    src:url(../fonts/gradebook-icons.eot);
    src:url(../fonts/gradebook-icons.eot?#iefix) format("embedded-opentype"),url(../fonts/gradebook-icons.woff) format("woff"),url(../fonts/gradebook-icons.ttf) format("truetype"),url(../fonts/gradebook-icons.svg#gradebook-icons) format("svg");
    font-weight:400;
    font-style:normal
}

/* Add Gradebook Item */
.gb-add-gb-item-button:before {
  font-family: "gradebook-icons";
  content: "\f067";
  vertical-align: text-bottom;
  margin-right: 4px;
}


/* Toolbar */
#gradebookGradesToolbar {
  position: relative;
  background: var(--sakai-background-color-1);
  font-size: 0.9em;
  overflow: visible;
  padding: 0 0.4em;
  width: 100%;
  margin: 0;
}
#gradebookGradesToolbar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#gradebookGradesToolbar ul.gb-toolbar-left {
  float: left;
}
#gradebookGradesToolbar ul.gb-toolbar-right {
  float: right;
}
#gradebookGradesToolbar > ul > li {
  display: inline-block;
  vertical-align: middle;
  margin-left: 4px;
  line-height: 40px;
}
#gradebookGradesToolbar > ul > li > * {
  line-height: initial;
}
#filterByGroup {
  line-height: 1em;
  max-width: 80%;
  max-width: calc(100% - 50px);
  font-size: 12px;
}
#gradebookGradesToolbar .gb-item-summary.warn-items-hidden .gb-item-summary-counts {
  color: var(--sakai-color-orange);
  font-weight: bold;
}
/* Toolbar - Show/Hide grade items */
#gradebookGradesToolbar .gb-toggle-grade-items-panel {
  position: absolute;
  border: 1px solid var(--sakai-border-color);
  min-width: 200px;
  max-width: 240px;
  min-height: 100px;
  max-height: 340px;
  top: 38px;
  background-color: var(--sakai-background-color-1);
  box-shadow: var(--elevation-2dp);
  z-index: 200;
  overflow: auto;
  padding-right: 14px;
} 
#gradeItemsTogglePanel .hide-me {
  display: none;
}
#gradeItemsTogglePanel input {
  margin-left: 20px;
  background-color: transparent;
  position: absolute;
  left: -100000px;
}
#gradeItemsTogglePanel label {
  cursor: pointer;
  display: block;
  margin: 0;
  position: relative;
  padding-right: 1.5em;
}
#gradeItemsTogglePanel label:hover {
  background-color: var(--sakai-background-color-2);
}
#gradeItemsTogglePanel input:before {
  height: 16px;
  width: 16px;
  display: inline-block;
  content: "";
}
#gradeItemsTogglePanel .gb-item-category-filter label {
  font-weight: bold;
}
#gradeItemsTogglePanel .gb-item-filter label {
  font-weight: normal;
}
#gradeItemsTogglePanel .gb-item-category-filter .weighting {
  font-weight: 200;
  color: var(--sakai-text-color-dimmed);
}
#gradeItemsTogglePanel .gb-item-filter-signal {
  height: 1.2em;
  width: 1.2em;
  border: 1px solid var(--sakai-border-color);
  background-color: var(--sakai-color-gray);
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -0.6em;
}
#gradeItemsTogglePanel .off .gb-item-filter-signal,
#gradeItemsTogglePanel .partial .gb-item-filter-signal {
  background-color: var(--sakai-background-color-1) !important;
}
#gradeItemsTogglePanel .gb-item-category-filter,
#gradeItemsTogglePanel .gb-item-filter,
#gradeItemsTogglePanel .gb-item-category-score-filter {
  clear: both;
  margin-left: 10px;
  position: relative;
  min-height: 24px;
  display: flex;
  align-items: center;
}
#gradeItemsTogglePanel .gb-item-filter,
#gradeItemsTogglePanel .gb-item-category-score-filter {
  margin-left: 20px;
}
#gradeItemsTogglePanel .gb-no-categories .gb-item-filter {
  margin-left: 10px;
}
#gradeItemsTogglePanel .gb-item-category-score-filter label {
  font-style: italic;
}
#gradeItemsTogglePanel label {
  display: inline-block;
  width: 90%;
  width: calc(100% - 20px);
}
#gradeItemsTogglePanel .gb-filter-partial-signal {
  display: block;

  border-left: 1.2em solid transparent;
  border-right: 0px solid transparent;
  border-bottom: 1.2em solid;
  border-bottom-color: inherit;
  margin-top: -1px;
  margin-left: -1px;
}
#gradeItemsTogglePanel #showAllGradeItems,
#gradeItemsTogglePanel #hideAllGradeItems {
  float: right;
  font-size: 0.9em;
  margin: 0 5px 0;
  border-bottom: none;
}
#gradeItemsTogglePanel .gb-item-filter-group {
  border-bottom: 1px dotted var(--sakai-border-color);
  padding-bottom: 5px;
  margin-bottom: 5px;
}
#gradeItemsTogglePanel .gb-item-filter-group:last-child {
  border-bottom: none;
  margin: 0;
}
#gradeItemsTogglePanel .gb-item-filter-group .btn-group {
  padding-left: 5px;
}
#gradeItemsTogglePanel .gb-item-filter-group .btn-group .btn.dropdown-toggle {
  padding: 0 4px;
}
#gradeItemsTogglePanel .gb-item-filter .gb-show-this-item,
#gradeItemsTogglePanel .gb-item-filter.off .gb-hide-this-item,
#gradeItemsTogglePanel .gb-item-category-filter .gb-show-this-category,
#gradeItemsTogglePanel .gb-item-category-filter.off .gb-hide-this-category,
#gradeItemsTogglePanel .gb-item-category-score-filter .gb-show-this-category-score,
#gradeItemsTogglePanel .gb-item-category-score-filter.off .gb-hide-this-category-score {
  display: none;
}
#gradeItemsTogglePanel .gb-item-filter.off .gb-show-this-item,
#gradeItemsTogglePanel .gb-item-category-filter.off .gb-show-this-category,
#gradeItemsTogglePanel .gb-item-category-score-filter.off .gb-show-this-category-score {
  display: block;
}
#gradeItemsTogglePanel .dropdown-menu {
  max-width: 140px;
}
#gradeItemsTogglePanel .dropdown-menu a {
  white-space: normal;
  padding: 3px 10px;
}

/* Wicket Overrides */
div.wicket-modal div.w_content_3 {
  border: none; /** don't want border wrapping content inside the modal **/
}
div.wicket-modal div.w_content {
  background: var(--sakai-modal-content-bg);
}
div.wicket-modal h3.w_captionText {
  padding: 20px;
  font-size: 1.5em;
  position: relative;
  height: auto;
}
div.wicket-modal div.w_caption {
  min-height: 60px;
  height: auto;
}
div.wicket-mask-dark {
  background-color: var(--sakai-background-color-1);
  opacity: 0.6;
  filter: alpha(opacity=6);
}
.gb-blur {
  filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='4');
  filter: url(blur.svg#blur);
  -webkit-filter: blur(4px);
  filter: blur(4px);
}
div.wicket-mask-transparent {
  opacity: 0.1; 
  background-color: var(--sakai-color-black); 
  filter: alpha(opacity=10); 
}
/* IE9-11 does not support a blur filter. As such, we fallback to an opaque mask */
/* Note: IE8 and below are not supported as Bootstrap does not support IE8 */
/* IE9 blur fallback */
body:nth-child(n) div.wicket-mask-dark {
  filter: alpha(opacity=\95);
  background-color: \#000;
}
/* IE10+ blur fallback */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  div.wicket-mask-dark {
    opacity: 0.95;
    background-color: var(--sakai-color-black);
  }
}
div.wicket-modal div.w_content_container {
  /* give wicket model content some padding */
  padding: 0 20px 20px;
}
div.wicket-modal div.w_content_container > div > h2:first-child,
div.wicket-modal div.w_content_container > div > form > h2:first-child {
  /* remove the large morpheus top padding and margin from the first header element */
  padding: 0 0 20px;
  margin: 0 0 20px;
  border-bottom: 1px solid var(--sakai-border-color);
}
/* override Bootstrap for the date picker */
div.wicket-modal div.w_content_container .input-group-btn button {
  font-size: 12px;
  height: 30px;
}
div.wicket-modal div.w_content_container .input-group-btn button > .glyphicon {
  top: -1px;
}

div.wicket-modal .w_topLeft,
div.wicket-modal .w_top,
div.wicket-modal .w_topRight,
div.wicket-modal .w_bottomLeft,
div.wicket-modal .w_bottom,
div.wicket-modal .w_bottomRight {
  background-image: none !important;
}
div.wicket-modal div.w_left,
div.wicket-modal div.w_right {
  background-image: none !important;
}
div.wicket-modal a.w_close {
  margin: 6px;
}
div.wicket-modal div.w_caption {
  cursor: move;
  background: var(--sakai-modal-header-bg);
  color: var(--sakai-modal-header-color);
}
div.wicket-modal div.w_right > div {
  box-shadow: var(--elevation-4dp);
}

div.wicket-modal .w_blue div.w_caption,
div.wicket-modal .w_blue div.w_content
{
  background: var(--sakai-background-color-1);
  color: var(--sakai-text-color-1);
}

/** temporary override for page width **/
.Mrphs-pageColumns--single {
	max-width: none !important;
}

/* grade log formatting */
.grade-log-item-wrap {
	margin-top: 10px;
	margin-bottom: 10px;
}

.grade-log-item {
	margin-bottom: 5px;
}

/* Datepicker */
.ui-datepicker {
  z-index: 50000 !important;
}


/* Update Ungraded modal */
.gb-update-ungraded-confirmation.in {
  position: absolute;
  right:0;
  bottom: auto;
  left: 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.gb-update-ungraded-confirmation {
  z-index: 50000 !important;
}
.gb-update-ungraded-confirmation .modal-dialog {
  z-index: 50001 !important;
}

.gb-group-title {
	font-weight: bold;
	line-height: 3em;
}

/* Live feedback message container */
.gb-live-feedback {
  display: inline-block;
  padding: 4px;
  font-size: 12px;
  line-height: 35px;
  color: var(--sakai-text-color-2);
  margin: 0 0 0 10px;
}

/* Connection Poll message */
#gbConnectionTimeoutFeedback {
  position: fixed;
  z-index: 99999999;
  top: 80px;
  padding: 5px;
  box-shadow: var(--elevation-2dp);
  font-size: 12px;
  width: 350px;
  margin-left: -175px;
  left: 50%;
}

#gbConnectionTimeoutFeedback:before {
  font-family: "gradebook-icons";
  content: "\f071";
}

/* Summary styles */
#instructorView.tab-pane,
#studentView.tab-pane {
  border-top: 1px dotted var(--sakai-border-color);
  margin-top: 20px;
  padding-top: 20px;
}
.gb-summary-grade-score-outof {
  color: var(--sakai-text-color-dimmed);
}
.gb-summary-grade-panel {
  position: relative;
}
.gb-summary-grade-panel .gb-summary-category-row td:first-child {
  font-weight: bold;
}
.gb-summary-grade-panel .gb-summary-grade-row td:first-child {
  padding-left: 34px;
}
.gb-summary-grade-panel .gb-no-categories .gb-summary-grade-row td:first-child {
  padding-left: 0;
}
.gb-summary-grade-duedate,
.gb-summary-grade-score,
.gb-summary-grade-weight,
.gb-summary-category-grade,
.gb-summary-category-weight {
  text-align: center;
}
.gb-summary-grade-panel .gb-summary-course-grade {
  margin: 0 0 10px 1px;
}
.gb-summary-grade-panel .gb-summary-course-grade .panel {
  margin-bottom: 0;
}
.gb-summary-grade-panel .gb-summary-course-grade .panel-body {
  padding: 8px 15px;
}
.gb-summary-grade-panel .gb-summary-course-grade-label {
  padding-right: 10px;
}
.gb-summary-grade-panel .gb-summary-expand-all {
  padding-right: 8px;
}
.gb-summary-grade-panel .gb-summary-category-toggle,
.gb-summary-grade-panel .gb-summary-category-toggle:hover,
.gb-summary-grade-panel .gb-summary-category-toggle:active {
  text-decoration: none;
  display: flex;
  flex-grow: 2;
}
.gb-summary-grade-panel .gb-summary-category-toggle-container {
  display: flex;
  justify-content: space-between;
}
.gb-summary-grade-title {
  font-weight: normal;
}

.gb-summary-grade-score sakai-rubric-student-button {
    float: right;
}
.gb-summary-grade-panel .gb-summary-grade-stats.pull-right {
  margin-left: 8px;
}
.gb-summary-grade-panel .gb-summary-grade-stats, .gb-summary-grade-panel .gb-summary-grade-stats:hover {
  text-decoration: none;
}

.gb-summary-grade-panel .gb-summary-grade-stats:before {
  font-family: 'gradebook-icons';
  content: '\f080';
  text-decoration: none;
  font-weight: normal;
}

.gb-summary-grade-panel .gb-summary-category-toggle:before {
  font-family: 'gradebook-icons';
  content: '\f078';
  padding-right: 5px;
  width: 24px;
  text-align: center;
}
.gb-summary-grade-panel .gb-summary-category-toggle.collapsed:before {
  content: '\f054';
}
.gb-summary-navigate-students {
  margin-bottom: 20px;
}
.gb-summary-previous-student {
  float: left;
  padding-left: 20px;
  margin-bottom: 10px;
}
.gb-summary-previous-student:before {
  font-family: 'bootstrap-icons';
  content: '\F12F';
  padding-right: 4px;
}
.gb-summary-next-student {
  float: right;
  padding-right: 20px;
  margin-bottom: 10px;
}
.gb-summary-next-student:after {
  font-family: 'bootstrap-icons';
  content: '\F138';
  padding-left: 4px;
}
.gb-grade-summary-content .tabpanel {
  display: block;
  margin-top: 10px;
}
.gb-summary-grade-panel {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 10px 0;
  margin: 0 0 10px;
  border-bottom: 1px solid var(--sakai-border-color);
}
.gb-summary-grade-panel .gb-summary-grade-flags {
  padding-left: 10px;
  float: right;
}
.gb-summary-not-released-flag,
.gb-summary-not-released-message {
  color: var(--sakai-text-color-dimmed);
}
#studentGradeSummary {
  margin: 30px 0 0;
}
.gb-grade-summary-close-confirmation {
  z-index: 50000 !important;
}
.gb-grade-summary-close-confirmation .modal-dialog {
  z-index: 50001 !important;
}
.gb-summary-print {
  position: absolute;
  top: 15px;
  right: 10px;
}
.gb-summary-print:before {
  font-family: 'gradebook-icons';
  content: '\f02f';
  padding-right: 4px;
}
#studentGradeSummary .table>tbody+tbody {
  border-width: 1px;
}
#studentGradeSummary .table>tbody.gb-summary-assignments-tbody+tbody.gb-summary-category-tbody {
  border-width: 2px;
}
.gb-summary-category-row td,
.gb-summary-category-row th {
  background-color: var(--sakai-background-color-2);
}
.gb-summary-grade-comments div{
  overflow-y: scroll;
  overflow-x: hidden;
  max-height:100px;
}

#gradebookGrades .gb-student-number-cell
{
  width: 180px;
  max-width: 180px;
  min-width: 180px;
  text-align: center;
}

#gradebookGrades .gb-student-number-cell .gb-title
{
  text-align: left;
}

.gb-summary-grade-score-dropped
{
  background-image: repeating-linear-gradient(135deg, var(--sakai-background-color-2), var(--sakai-background-color-2) 5px, var(--sakai-background-color-1) 5px, var(--sakai-background-color-1) 10px);
  position: relative;
}

.gb-summary-grade-score-dropped .gb-summary-grade-score-raw,
.gb-summary-grade-score-excused .gb-summary-grade-score-raw
{
  text-decoration: line-through;
}

.gb-summary-grade-category-dropInfo
{
  font-size: 0.9em;
  color: var(--sakai-text-color-dimmed);
  font-weight: normal;
  margin: 0 0 0 24px;
}

.gb-summary-grade-category-dropInfo span
{
  white-space: nowrap;
}

.gb-summary-grade-category-col-dropInfo
{
  font-size: 0.9em;
  color: var(--sakai-text-color-dimmed);
  font-weight: normal;
  margin: 0;
}

.gb-noGbItems
{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  padding: 1em;
  font-size: 20px;
  text-align: center;
  color: var(--sakai-text-color-2);
  background-color: var(--sakai-background-color-3);
  -ms-grid-row: 3;
  -ms-grid-row-span: 1;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-area: empty;
}
.gb-noGbItems > i
{
  display: block;
  font-size: 3em;
}

.gradeTableOuterWrapper
{
  -ms-grid-row: 3;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: grades;
}

.gradesToolbar1
{
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  grid-column-start: 1;
  grid-column-end: span 2;
}

.gradesToolbar1 .captionToggleContainer
{
  margin-left: auto;
}

.captionToggleContainer {
    display: flex;
    align-items: center;
}

.gradesToolbar2
{
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: toolbar2;
}

.gradeTableArea
{
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas:
    "toolbar1 toolbar1"
    "toolbar2 toolbar2"
    "grades empty";
}

#gradeTableWrapper
{
  background-color: var(--sakai-background-color-2);
}

@media all and (max-width: 1024px)
{
  .gradeTableArea
  {
    display: block;
  }

  .gradeTableArea #gradebookGradesToolbar
  {
    margin-top: 0;
  }

  .gb-noGbItems div.act
  {
    padding-bottom: 0;
  }

  .gradeTableArea .gradeTableOuterWrapper
  {
    border-right: none;
  }
}

@media all and (max-width: 640px)
{
  .gb-noGbItems
  {
    font-size: 1em;
  }
}

.gb-noStudents
{
  position: absolute;
  top: calc(30vh + 58px - 0.5em);
  z-index: 100;
  width: 100%;
  text-align: center;
  line-height: 1em;
  font-size: 16px;
  color: var(--sakai-text-color-2);
}

.gradeTableOuterWrapper
{
  border-right: 1px solid var(--sakai-border-color);
  position: relative;
  max-width: 100vw;
}

.gb-noGbItems button.active
{
  font-size: 14px;
}

div.wicket-modal {
  z-index: 999 !important;
  max-width: 100%;
  position: absolute;
}

div.wicket-mask-transparent, div.wicket-mask-dark {
  z-index: 998 !important;
}

.form-vertical div.awesomplete {
  width: 100%;
  margin-bottom: 15px;
}
